<template>
  <div id="app">
    <router-view/>
  </div>
</template>

<script>
    import wx from 'weixin-js-sdk'
export default {
    name: 'App',
    data() {
        return {
           showInfo:{
               title: '',
               desc: '',
               link: '',
               imgUrl: ''
           },
            platcode: 'ZHWZ',
            route: '',
            sid: ''
        }
    },
    methods: {
        //获取url信息
        getParamString(name){
            var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
            var r = window.location.search.substr(1).match(reg);//search,查询？后面的参数，并匹配正则
            if(r!=null)return  unescape(r[2]); return null;
        },
        showMsgbox(msg){
            //弹框函数
            this.$msgbox({
                content:msg,
                className:'pop-custom'
            });
        }
    },
    mounted (){
        let _this = this;
        _this.platcode = _this.getParamString('platcode');
        _this.route = _this.getParamString('route');
        _this.sid = _this.getParamString('sid');
        window.sessionStorage.setItem('sid',_this.sid);
        let url = location.href.split('#')[0];
        let data = {
            url: url,
            platcode: _this.platcode
        };
        var signPackageApi = process.env.API_HOST+_this.$http.urlHead+'public_controller/signPackage';
        var shareApi = process.env.API_HOST+_this.$http.urlHead+'public_controller/share?platcode='+_this.platcode;

        if (_this.route == 'fast'){
            signPackageApi = process.env.API_HOST+'/cYouHuiZhongXin/fastapi/signPackage.php';
        }else{
            signPackageApi = process.env.API_HOST+_this.$http.urlHead+'public_controller/signPackage';
        }

        _this.$http.getAxio(0,signPackageApi, 'POST', _this.$qs.stringify(data)).then(res => {
            //接口入住权限验证配置
            if(res.status == 0){
                wx.config({
                    debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。

                    appId: res.appId, // 必填，公众号的唯一标识
                    timestamp: res.timestamp, // 必填，生成签名的时间戳
                    nonceStr: res.nonceStr, // 必填，生成签名的随机串
                    signature: res.signature, // 必填，签名，见附录1
                    jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage', 'hideMenuItems', 'onMenuShareQQ', 'onMenuShareWeibo', 'onMenuShareQZone', 'onOpenAddress'] // 必填，需要使用的JS接口列表
                });
            }else if(res.status == -99){
                _this.showMsgbox(res.msg);
            }

        });

        let jsonData = {
            zwtoken: _this.sid
        }
        _this.$http.getAxio(0,shareApi, 'POST', _this.$qs.stringify(jsonData)).then(res => {
            if (res.status == 0){
                _this.showInfo = {
                    title: res.title, // 分享标题
                    desc: res.desc, // 分享描述
                    link: res.link, // 分享链接
                    imgUrl: res.imgUrl, // 分享图标
                };
            }else if(res.status == -99){
                _this.showMsgbox(res.msg);
            }

        });

        wx.ready(function() {
            wx.onMenuShareAppMessage({
                title: _this.showInfo.title, // 分享标题
                desc: _this.showInfo.desc, // 分享描述
                link: _this.showInfo.link, // 分享链接
                imgUrl: _this.showInfo.imgUrl, // 分享图标
                type: '', // 分享类型,music、video或link，不填默认为link
                dataUrl: '', // 如果type是music或video，则要提供数据链接，默认为空
                success: function() {
                    // 用户确认分享后执行的回调函数
                },
                cancel: function() {
                    // 用户取消分享后执行的回调函数
                }
            });
            wx.onMenuShareTimeline({
                title: _this.showInfo.title, // 分享标题
                desc: _this.showInfo.desc, // 分享描述
                link: _this.showInfo.link, // 分享链接
                imgUrl: _this.showInfo.imgUrl, // 分享图标
                success: function() {
                    // 用户确认分享后执行的回调函数
                },
                cancel: function() {
                    // 用户取消分享后执行的回调函数
                }
            });
        });
    }
}
</script>
